Tutorials
Run the portal locally
This walkthrough takes you from a fresh clone to the portal running in your browser.
Prerequisites
- Node.js 20 or newer (the Docker build uses
node:20-alpine; the ICICLE service definition targets Node 24) - npm (ships with Node.js)
- Git
Steps
-
Clone the repository and enter it.
git clone https://github.com/ICICLE-ai/I-SAW_Portal.git
cd I-SAW_Portal -
Install dependencies.
npm install -
Start the development server.
npm run devVite serves the app on port
3000and binds to0.0.0.0, so it is reachable both athttp://localhost:3000and from other machines on your network. -
Open
http://localhost:3000in a browser.
What you should see
A dark, full-screen single-page app with an animated canvas background and a three-tab header:
| Tab | Header label | Contents |
|---|---|---|
| 1 | Project Vision & Strategic Pillars | The I-SAW mission plus three pillars — Networking, Smart Sensing, Innovative Hardware |
| 2 | Data Sandbox & Functional Capabilities | Sub-tabs for The Smart Honeypot, Analytics, and Gesture Drone Control |
| 3 | Onboarding Hub | Sub-tabs for Quick Start, DIY Hardware, and Request Kit |
On narrow screens the tab bar collapses into a dropdown selector.
Take the guided tour of the sandbox
- Open Data Sandbox & Functional Capabilities → The Smart Honeypot. Step through the honeypot slideshow to see the feeder illustration, the sensor deployment map, and the three-stage confirmation pipeline (visual detection → audio confirmation → footfall confirmation).
- Switch to Analytics. You get metric cards (total visits, species detected, feed time, peak activity), a visits-over-time chart, an activity heatmap, a species visit summary table, and smart alerts — all rendered with Tailwind utilities and inline SVG, no charting library.
- Switch to Gesture Drone Control for the interactive command matrix and the detection-engine specs.
- Move to the Onboarding Hub → Quick Start and click Get Deployment Package. The browser generates and downloads
setup-drone.shclient-side. - In DIY Hardware, click Generate sample config.json file to download a provisioning payload describing the MQTT broker, hardware modes, and cloud endpoint.
All data shown in the sandbox is illustrative and generated in the browser. The portal does not currently connect to live sensors or a backend API.